API Documentation
DxDefinesWrapper.h
1 // DxDefinesWrapper.h
3 //
5 
6 namespace nkGraphics
7 {
8  // D3D11_USAGE
12  enum USAGE
13  {
17  USAGE_STAGING = 3
18  } ;
19 
20  // D3D11_BIND_FLAG
24  enum BIND_FLAG
25  {
26  BIND_NONE = 0,
27  BIND_VERTEX_BUFFER = 0x1L,
28  BIND_INDEX_BUFFER = 0x2L,
29  BIND_CONSTANT_BUFFER = 0x4L,
30  BIND_SHADER_RESOURCE = 0x8L,
31  BIND_STREAM_OUTPUT = 0x10L,
32  BIND_RENDER_TARGET = 0x20L,
33  BIND_DEPTH_STENCIL = 0x40L,
34  BIND_UNORDERED_ACCESS = 0x80L,
35  BIND_DECODER = 0x200L,
36  BIND_VIDEO_ENCODER = 0x400L
37  } ;
38 
39  // D3D11_CPU_ACCESS_FLAG
44  {
46  CPU_ACCESS_WRITE = 0x10000L,
47  CPU_ACCESS_READ = 0x20000L,
49  } ;
50 
51  // D3D11_RESOURCE_MISC_FLAG
56  {
57  RESOURCE_MISC_NONE = 0,
58  RESOURCE_MISC_GENERATE_MIPS = 0x1L,
59  RESOURCE_MISC_SHARED = 0x2L,
60  RESOURCE_MISC_TEXTURECUBE = 0x4L,
61  RESOURCE_MISC_DRAWINDIRECT_ARGS = 0x10L,
62  RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS = 0x20L,
63  RESOURCE_MISC_BUFFER_STRUCTURED = 0x40L,
64  RESOURCE_MISC_RESOURCE_CLAMP = 0x80L,
65  RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x100L,
66  RESOURCE_MISC_GDI_COMPATIBLE = 0x200L,
67  RESOURCE_MISC_SHARED_NTHANDLE = 0x800L,
68  RESOURCE_MISC_RESTRICTED_CONTENT = 0x1000L,
69  RESOURCE_MISC_RESTRICT_SHARED_RESOURCE = 0x2000L,
70  RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER = 0x4000L,
71  RESOURCE_MISC_GUARDED = 0x8000L,
72  RESOURCE_MISC_TILE_POOL = 0x20000L,
73  RESOURCE_MISC_TILED = 0x40000L,
74  RESOURCE_MISC_HW_PROTECTED = 0x80000L
75  } ;
76 
77  // D3D11_FILTER
81  enum FILTER
82  {
83  FILTER_MIN_MAG_MIP_POINT = 0,
84  FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1,
85  FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4,
86  FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5,
87  FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10,
88  FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11,
89  FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14,
90  FILTER_MIN_MAG_MIP_LINEAR = 0x15,
91  FILTER_ANISOTROPIC = 0x55,
92  FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80,
93  FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81,
94  FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84,
95  FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85,
96  FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90,
97  FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91,
98  FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94,
99  FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95,
100  FILTER_COMPARISON_ANISOTROPIC = 0xd5,
101  FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100,
102  FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101,
103  FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104,
104  FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105,
105  FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110,
106  FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111,
107  FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114,
108  FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115,
109  FILTER_MINIMUM_ANISOTROPIC = 0x155,
110  FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180,
111  FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181,
112  FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184,
113  FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185,
114  FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190,
115  FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191,
116  FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194,
117  FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195,
118  FILTER_MAXIMUM_ANISOTROPIC = 0x1d5
119  } ;
120 
121  // D3D11_TEXTURE_ADDRESS_MODE
126  {
127  TEXTURE_ADDRESS_WRAP = 1,
128  TEXTURE_ADDRESS_MIRROR = 2,
129  TEXTURE_ADDRESS_CLAMP = 3,
130  TEXTURE_ADDRESS_BORDER = 4,
131  TEXTURE_ADDRESS_MIRROR_ONCE = 5
132  } ;
133 
134  // D3D11_COMPARISON_FUNC
139  {
140  COMPARISON_NEVER = 1,
141  COMPARISON_LESS = 2,
142  COMPARISON_EQUAL = 3,
143  COMPARISON_LESS_EQUAL = 4,
144  COMPARISON_GREATER = 5,
145  COMPARISON_NOT_EQUAL = 6,
146  COMPARISON_GREATER_EQUAL = 7,
147  COMPARISON_ALWAYS = 8
148  } ;
149 
150  // DXGI_FORMAT
154  enum FORMAT
155  {
156  UNKNOWN = 0,
157  R32G32B32A32_TYPELESS = 1,
158  R32G32B32A32_FLOAT = 2,
159  R32G32B32A32_UINT = 3,
160  R32G32B32A32_SINT = 4,
161  R32G32B32_TYPELESS = 5,
162  R32G32B32_FLOAT = 6,
163  R32G32B32_UINT = 7,
164  R32G32B32_SINT = 8,
165  R16G16B16A16_TYPELESS = 9,
166  R16G16B16A16_FLOAT = 10,
167  R16G16B16A16_UNORM = 11,
168  R16G16B16A16_UINT = 12,
169  R16G16B16A16_SNORM = 13,
170  R16G16B16A16_SINT = 14,
171  R32G32_TYPELESS = 15,
172  R32G32_FLOAT = 16,
173  R32G32_UINT = 17,
174  R32G32_SINT = 18,
175  R32G8X24_TYPELESS = 19,
176  D32_FLOAT_S8X24_UINT = 20,
177  R32_FLOAT_X8X24_TYPELESS = 21,
178  X32_TYPELESS_G8X24_UINT = 22,
179  R10G10B10A2_TYPELESS = 23,
180  R10G10B10A2_UNORM = 24,
181  R10G10B10A2_UINT = 25,
182  R11G11B10_FLOAT = 26,
183  R8G8B8A8_TYPELESS = 27,
184  R8G8B8A8_UNORM = 28,
185  R8G8B8A8_UNORM_SRGB = 29,
186  R8G8B8A8_UINT = 30,
187  R8G8B8A8_SNORM = 31,
188  R8G8B8A8_SINT = 32,
189  R16G16_TYPELESS = 33,
190  R16G16_FLOAT = 34,
191  R16G16_UNORM = 35,
192  R16G16_UINT = 36,
193  R16G16_SNORM = 37,
194  R16G16_SINT = 38,
195  R32_TYPELESS = 39,
196  D32_FLOAT = 40,
197  R32_FLOAT = 41,
198  R32_UINT = 42,
199  R32_SINT = 43,
200  R24G8_TYPELESS = 44,
201  D24_UNORM_S8_UINT = 45,
202  R24_UNORM_X8_TYPELESS = 46,
203  X24_TYPELESS_G8_UINT = 47,
204  R8G8_TYPELESS = 48,
205  R8G8_UNORM = 49,
206  R8G8_UINT = 50,
207  R8G8_SNORM = 51,
208  R8G8_SINT = 52,
209  R16_TYPELESS = 53,
210  R16_FLOAT = 54,
211  D16_UNORM = 55,
212  R16_UNORM = 56,
213  R16_UINT = 57,
214  R16_SNORM = 58,
215  R16_SINT = 59,
216  R8_TYPELESS = 60,
217  R8_UNORM = 61,
218  R8_UINT = 62,
219  R8_SNORM = 63,
220  R8_SINT = 64,
221  A8_UNORM = 65,
222  R1_UNORM = 66,
223  R9G9B9E5_SHAREDEXP = 67,
224  R8G8_B8G8_UNORM = 68,
225  G8R8_G8B8_UNORM = 69,
226  BC1_TYPELESS = 70,
227  BC1_UNORM = 71,
228  BC1_UNORM_SRGB = 72,
229  BC2_TYPELESS = 73,
230  BC2_UNORM = 74,
231  BC2_UNORM_SRGB = 75,
232  BC3_TYPELESS = 76,
233  BC3_UNORM = 77,
234  BC3_UNORM_SRGB = 78,
235  BC4_TYPELESS = 79,
236  BC4_UNORM = 80,
237  BC4_SNORM = 81,
238  BC5_TYPELESS = 82,
239  BC5_UNORM = 83,
240  BC5_SNORM = 84,
241  B5G6R5_UNORM = 85,
242  B5G5R5A1_UNORM = 86,
243  B8G8R8A8_UNORM = 87,
244  B8G8R8X8_UNORM = 88,
245  FORCE_UINT = 0xffffffffUL,
246  } ;
247 
248  // D3D11_MAP
252  enum MAP
253  {
254  MAP_READ = 1,
255  MAP_WRITE = 2,
256  MAP_READ_WRITE = 3,
257  MAP_WRITE_DISCARD = 4,
258  MAP_WRITE_NO_OVERWRITE = 5
259  } ;
260 
261  // D3D11_DEPTH_WRITE_MASK
266  {
269  } ;
270 
271  // D3D11_STENCIL_OP
276  {
277  STENCIL_OP_KEEP = 1,
278  STENCIL_OP_ZERO = 2,
279  STENCIL_OP_REPLACE = 3,
280  STENCIL_OP_INCR_SAT = 4,
281  STENCIL_OP_DECR_SAT = 5,
282  STENCIL_OP_INVERT = 6,
283  STENCIL_OP_INCR = 7,
284  STENCIL_OP_DECR = 8
285  } ;
286 
287  // D3D11_PRIMITIVE_TOPOLOGY
292  {
293  PRIMITIVE_TOPOLOGY_UNDEFINED = 0,
294  PRIMITIVE_TOPOLOGY_POINTLIST = 1,
295  PRIMITIVE_TOPOLOGY_LINELIST = 2,
296  PRIMITIVE_TOPOLOGY_LINESTRIP = 3,
297  PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4,
298  PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5,
299  PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10,
300  PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11,
301  PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12,
302  PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13,
303  PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33,
304  PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34,
305  PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35,
306  PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36,
307  PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37,
308  PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38,
309  PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39,
310  PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40,
311  PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41,
312  PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42,
313  PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43,
314  PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44,
315  PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45,
316  PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46,
317  PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47,
318  PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48,
319  PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49,
320  PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50,
321  PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51,
322  PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52,
323  PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53,
324  PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54,
325  PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55,
326  PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56,
327  PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57,
328  PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58,
329  PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59,
330  PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60,
331  PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61,
332  PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62,
333  PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63,
334  PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64
335  } ;
336 
337  // D3D11_DSV_FLAG
341  enum DSV_FLAG
342  {
343  DSV_READ_ONLY_DEPTH = 0x1L,
344  DSV_READ_ONLY_STENCIL = 0x2L
345  } ;
346 
347  // D3D11_DSV_DIMENSION
352  {
353  DSV_DIMENSION_UNKNOWN = 0,
354  DSV_DIMENSION_TEXTURE1D = 1,
355  DSV_DIMENSION_TEXTURE1DARRAY = 2,
356  DSV_DIMENSION_TEXTURE2D = 3,
357  DSV_DIMENSION_TEXTURE2DARRAY = 4,
358  DSV_DIMENSION_TEXTURE2DMS = 5,
359  DSV_DIMENSION_TEXTURE2DMSARRAY = 6
360  } ;
361 
362  // D3D11_RTV_DIMENSION
367  {
368  RTV_DIMENSION_UNKNOWN = 0,
369  RTV_DIMENSION_BUFFER = 1,
370  RTV_DIMENSION_TEXTURE1D = 2,
371  RTV_DIMENSION_TEXTURE1DARRAY = 3,
372  RTV_DIMENSION_TEXTURE2D = 4,
373  RTV_DIMENSION_TEXTURE2DARRAY = 5,
374  RTV_DIMENSION_TEXTURE2DMS = 6,
375  RTV_DIMENSION_TEXTURE2DMSARRAY = 7,
376  RTV_DIMENSION_TEXTURE3D = 8
377  } ;
378 
379  // D3D11_SRV_DIMENSION
384  {
385  SRV_DIMENSION_UNKNOWN = 0,
386  SRV_DIMENSION_BUFFER = 1,
387  SRV_DIMENSION_TEXTURE1D = 2,
388  SRV_DIMENSION_TEXTURE1DARRAY = 3,
389  SRV_DIMENSION_TEXTURE2D = 4,
390  SRV_DIMENSION_TEXTURE2DARRAY = 5,
391  SRV_DIMENSION_TEXTURE2DMS = 6,
392  SRV_DIMENSION_TEXTURE2DMSARRAY = 7,
393  SRV_DIMENSION_TEXTURE3D = 8,
394  SRV_DIMENSION_TEXTURECUBE = 9,
395  SRV_DIMENSION_TEXTURECUBEARRAY = 10,
396  SRV_DIMENSION_BUFFEREX = 11
397  } ;
398 
399  // D3D11_UAV_DIMENSION
404  {
405  UAV_DIMENSION_UNKNOWN = 0,
406  UAV_DIMENSION_BUFFER = 1,
407  UAV_DIMENSION_TEXTURE1D = 2,
408  UAV_DIMENSION_TEXTURE1DARRAY = 3,
409  UAV_DIMENSION_TEXTURE2D = 4,
410  UAV_DIMENSION_TEXTURE2DARRAY = 5,
411  UAV_DIMENSION_TEXTURE3D = 8
412  } ;
413 
414  // D3D11_BUFFEREX_SRV_FLAG
419  {
420  BUFFEREX_SRV_FLAG_RAW = 0x1
421  } ;
422 
423  // D3D11_BUFFER_UAV_FLAG
428  {
429  BUFFER_UAV_FLAG_RAW = 0x1,
430  BUFFER_UAV_FLAG_APPEND = 0x2,
431  BUFFER_UAV_FLAG_COUNTER = 0x4
432  } ;
433 
434  // D3D11_BLEND
438  enum BLEND
439  {
440  BLEND_ZERO = 1,
441  BLEND_ONE = 2,
442  BLEND_SRC_COLOR = 3,
443  BLEND_INV_SRC_COLOR = 4,
444  BLEND_SRC_ALPHA = 5,
445  BLEND_INV_SRC_ALPHA = 6,
446  BLEND_DEST_ALPHA = 7,
447  BLEND_INV_DEST_ALPHA = 8,
448  BLEND_DEST_COLOR = 9,
449  BLEND_INV_DEST_COLOR = 10,
450  BLEND_SRC_ALPHA_SAT = 11,
451  BLEND_BLEND_FACTOR = 14,
452  BLEND_INV_BLEND_FACTOR = 15,
453  BLEND_SRC1_COLOR = 16,
454  BLEND_INV_SRC1_COLOR = 17,
455  BLEND_SRC1_ALPHA = 18,
456  BLEND_INV_SRC1_ALPHA = 19
457  } ;
458 
459  // D3D11_BLEND_OP
463  enum BLEND_OP
464  {
465  BLEND_OP_ADD = 1,
466  BLEND_OP_SUBTRACT = 2,
467  BLEND_OP_REV_SUBTRACT = 3,
468  BLEND_OP_MIN = 4,
469  BLEND_OP_MAX = 5
470  } ;
471 
472  // D3D11_COLOR_WRITE_ENABLE
477  {
478  COLOR_WRITE_ENABLE_RED = 1,
479  COLOR_WRITE_ENABLE_GREEN = 2,
480  COLOR_WRITE_ENABLE_BLUE = 4,
481  COLOR_WRITE_ENABLE_ALPHA = 8,
482  COLOR_WRITE_ENABLE_ALL = (((COLOR_WRITE_ENABLE_RED | COLOR_WRITE_ENABLE_GREEN) | COLOR_WRITE_ENABLE_BLUE) | COLOR_WRITE_ENABLE_ALPHA)
483  } ;
484 
485  // D3D11_FILL_MODE
490  {
491  FILL_WIREFRAME = 2,
492  FILL_SOLID = 3
493  } ;
494 
495  // D3D11_CULL_MODE
500  {
501  CULL_NONE = 1,
502  CULL_FRONT = 2,
503  CULL_BACK = 3
504  } ;
505 
506  // Custom enum : type de shader concerne
511  {
512  VERTEX_SHADER = 0,
513  HULL_SHADER,
514  DOMAIN_SHADER,
515  GEOMETRY_SHADER,
516  PIXEL_SHADER,
517  COMPUTE_SHADER,
518  RAYTRACING_SHADER,
519  UNKNOWN_SHADER
520  } ;
521 
522  // Custom enum : les semantiques
527  {
528  // Per vertex
529  POSITION_0 = 0,
530  POSITION_1,
531  POSITION_2,
532  POSITION_3,
533  POSITION_4,
534  NORMAL_0 = POSITION_0 + 8,
535  NORMAL_1,
536  NORMAL_2,
537  NORMAL_3,
538  NORMAL_4,
539  UV_0 = NORMAL_0 + 8,
540  UV_1,
541  UV_2,
542  UV_3,
543  UV_4,
544  COLOR_0 = UV_0 + 8,
545  COLOR_1,
546  COLOR_2,
547  COLOR_3,
548  COLOR_4,
549  TANGENT_0 = COLOR_0 + 8,
550  TANGENT_1,
551  TANGENT_2,
552  TANGENT_3,
553  TANGENT_4,
554  BINORMAL_0 = TANGENT_0 + 8,
555  BINORMAL_1,
556  BINORMAL_2,
557  BINORMAL_3,
558  BINORMAL_4,
559  // Vertex data
560  SV_VERTEX_ID = BINORMAL_0 + 8,
561  // Instance
562  WORLDMAT_0 = SV_VERTEX_ID + 1,
563  WORLDMAT_1,
564  WORLDMAT_2,
565  WORLDMAT_3,
566  WORLDMAT_4,
567  // Offset pour les output semantics
568  OUTPUT_SEMANTIC_OFFSET = WORLDMAT_0 + 16,
569  // Maximum bound
570  MAXIMUM_SEMANTIC_INDEX = OUTPUT_SEMANTIC_OFFSET * 2
571  } ;
572 
577  {
578  // Constant buffer
579  CONSTANT_BUFFER_0 = 0,
580  CONSTANT_BUFFER_1,
581  CONSTANT_BUFFER_2,
582  CONSTANT_BUFFER_3,
583  CONSTANT_BUFFER_4,
584  CONSTANT_BUFFER_5,
585  CONSTANT_BUFFER_6,
586  CONSTANT_BUFFER_7,
587  CONSTANT_BUFFER_8,
588  CONSTANT_BUFFER_9,
589  CONSTANT_BUFFER_10,
590  CONSTANT_BUFFER_11,
591  CONSTANT_BUFFER_12,
592  CONSTANT_BUFFER_13,
593  CONSTANT_BUFFER_14,
594  CONSTANT_BUFFER_15,
595  CONSTANT_BUFFER_16,
596  CONSTANT_BUFFER_17,
597  CONSTANT_BUFFER_18,
598  // Shader resource
599  SHADER_RESOURCE_0,
600  SHADER_RESOURCE_1,
601  SHADER_RESOURCE_2,
602  SHADER_RESOURCE_3,
603  SHADER_RESOURCE_4,
604  SHADER_RESOURCE_5,
605  SHADER_RESOURCE_6,
606  SHADER_RESOURCE_7,
607  SHADER_RESOURCE_8,
608  SHADER_RESOURCE_9,
609  SHADER_RESOURCE_10,
610  SHADER_RESOURCE_11,
611  SHADER_RESOURCE_12,
612  SHADER_RESOURCE_13,
613  SHADER_RESOURCE_14,
614  SHADER_RESOURCE_15,
615  SHADER_RESOURCE_16,
616  SHADER_RESOURCE_17,
617  SHADER_RESOURCE_18,
618  // UAV
619  UAV_RESOURCE_0,
620  UAV_RESOURCE_1,
621  UAV_RESOURCE_2,
622  UAV_RESOURCE_3,
623  UAV_RESOURCE_4,
624  UAV_RESOURCE_5,
625  UAV_RESOURCE_6,
626  UAV_RESOURCE_7,
627  UAV_RESOURCE_8,
628  UAV_RESOURCE_9,
629  UAV_RESOURCE_10,
630  UAV_RESOURCE_11,
631  UAV_RESOURCE_12,
632  UAV_RESOURCE_13,
633  UAV_RESOURCE_14,
634  UAV_RESOURCE_15,
635  UAV_RESOURCE_16,
636  UAV_RESOURCE_17,
637  UAV_RESOURCE_18,
638  // Sampler
639  SAMPLER_0,
640  SAMPLER_1,
641  SAMPLER_2,
642  SAMPLER_3,
643  SAMPLER_4,
644  SAMPLER_5,
645  SAMPLER_6
646  } ;
647 
652  {
653  PROFILE_UNKNOWN = 0,
654  PROFILE_SM_5_0,
655  PROFILE_SM_5_1,
656  PROFILE_SM_6_0
657  } ;
658 }
nkGraphics::CPU_ACCESS_NONE
@ CPU_ACCESS_NONE
CPU won't need to be able to access the resource.
Definition: DxDefinesWrapper.h:45
nkGraphics::CULL_MODE
CULL_MODE
Available culling modes.
Definition: DxDefinesWrapper.h:500
nkGraphics::RESOURCE_MISC_FLAG
RESOURCE_MISC_FLAG
Available misc flags for resources.
Definition: DxDefinesWrapper.h:56
nkGraphics::DEPTH_WRITE_MASK_ALL
@ DEPTH_WRITE_MASK_ALL
Turns on depth writes.
Definition: DxDefinesWrapper.h:268
nkGraphics::BLEND_OP
BLEND_OP
Available blending operations.
Definition: DxDefinesWrapper.h:464
nkGraphics::SHADER_TYPE
SHADER_TYPE
Available shader types.
Definition: DxDefinesWrapper.h:511
nkGraphics::CPU_ACCESS_READ
@ CPU_ACCESS_READ
CPU will need read access to the resource.
Definition: DxDefinesWrapper.h:47
nkGraphics::BIND_FLAG
BIND_FLAG
Available binding flags for a resources.
Definition: DxDefinesWrapper.h:25
nkGraphics::BUFFEREX_SRV_FLAG
BUFFEREX_SRV_FLAG
Available buffer ex shader resource views flags.
Definition: DxDefinesWrapper.h:419
nkGraphics::DSV_DIMENSION
DSV_DIMENSION
Available depth and stencil view dimensions.
Definition: DxDefinesWrapper.h:352
nkGraphics::CPU_ACCESS_WRITE
@ CPU_ACCESS_WRITE
CPU will need write access to the resource.
Definition: DxDefinesWrapper.h:46
nkGraphics::DSV_FLAG
DSV_FLAG
Available depth and stencil view flags.
Definition: DxDefinesWrapper.h:342
nkGraphics::SHADER_RESOURCE_SLOT
SHADER_RESOURCE_SLOT
Available resources slots.
Definition: DxDefinesWrapper.h:577
nkGraphics::USAGE_DEFAULT
@ USAGE_DEFAULT
Default usage. Will be hosted on GPU, most likely.
Definition: DxDefinesWrapper.h:14
nkGraphics::PRIMITIVE_TOPOLOGY
PRIMITIVE_TOPOLOGY
Available primitive topologies used within meshes.
Definition: DxDefinesWrapper.h:292
nkGraphics::DEPTH_WRITE_MASK
DEPTH_WRITE_MASK
Available depth write masks.
Definition: DxDefinesWrapper.h:266
nkGraphics::USAGE
USAGE
Available usage for resources. Drives the memory used for hosting the data.
Definition: DxDefinesWrapper.h:13
nkGraphics::USAGE_DYNAMIC
@ USAGE_DYNAMIC
Dynamic. Meant to be updated often (per frame), will be hosted on CPU, most likely.
Definition: DxDefinesWrapper.h:16
nkGraphics::COLOR_WRITE_ENABLE
COLOR_WRITE_ENABLE
Available color write masks.
Definition: DxDefinesWrapper.h:477
nkGraphics::BLEND
BLEND
Available blending types.
Definition: DxDefinesWrapper.h:439
nkGraphics::MAP
MAP
Available mapping request types.
Definition: DxDefinesWrapper.h:253
nkGraphics::BUFFER_UAV_FLAG
BUFFER_UAV_FLAG
Available unordered access views flags.
Definition: DxDefinesWrapper.h:428
nkGraphics::UAV_DIMENSION
UAV_DIMENSION
Available unordered access views dimensions.
Definition: DxDefinesWrapper.h:404
nkGraphics::DEPTH_WRITE_MASK_ZERO
@ DEPTH_WRITE_MASK_ZERO
Turns off depth writes.
Definition: DxDefinesWrapper.h:267
nkGraphics::CPU_ACCESS_FLAG
CPU_ACCESS_FLAG
Available cpu access flags.
Definition: DxDefinesWrapper.h:44
nkGraphics::CPU_ACCESS_READ_WRITE
@ CPU_ACCESS_READ_WRITE
CPU will need both read and write access to the resource.
Definition: DxDefinesWrapper.h:48
nkGraphics::USAGE_STAGING
@ USAGE_STAGING
Staging. Meant to be read from CPU. Will be hosted on CPU, most likely.
Definition: DxDefinesWrapper.h:17
nkGraphics::TEXTURE_ADDRESS_MODE
TEXTURE_ADDRESS_MODE
Available texture addressing modes available for samplers.
Definition: DxDefinesWrapper.h:126
nkGraphics::FILTER
FILTER
Available filters available for samplers.
Definition: DxDefinesWrapper.h:82
nkGraphics::SHADER_SEMANTIC
SHADER_SEMANTIC
Available shader semantics.
Definition: DxDefinesWrapper.h:527
nkGraphics::COMPARISON_FUNC
COMPARISON_FUNC
Available comparison functions.
Definition: DxDefinesWrapper.h:139
nkGraphics::STENCIL_OP
STENCIL_OP
Available stencil operations.
Definition: DxDefinesWrapper.h:276
nkGraphics::FORMAT
FORMAT
Available formats for resources.
Definition: DxDefinesWrapper.h:155
nkGraphics::FILL_MODE
FILL_MODE
Available filling mode during rasterization.
Definition: DxDefinesWrapper.h:490
nkGraphics::PROGRAM_COMPILATION_PROFILE
PROGRAM_COMPILATION_PROFILE
Available program compilation profiles.
Definition: DxDefinesWrapper.h:652
nkGraphics
Encompasses all API of component NilkinsGraphics.
Definition: BoundingBox.h:7
nkGraphics::SRV_DIMENSION
SRV_DIMENSION
Available shader resource views dimensions.
Definition: DxDefinesWrapper.h:384
nkGraphics::RTV_DIMENSION
RTV_DIMENSION
Available render target view dimensions.
Definition: DxDefinesWrapper.h:367
nkGraphics::USAGE_IMMUTABLE
@ USAGE_IMMUTABLE
Immutable. Needs starting resources, will be hosted on GPU, most likely.
Definition: DxDefinesWrapper.h:15